package cn.tedu.boot22.mapper;

import cn.tedu.boot22.entity.Hero;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
//接口 interface
public interface HeroMapper {
    // #{xxx}会从下面方法的参数列表中找到同名变量
    //如果找不到就会进入Hero实体类中找到同名的get方法获取值
    //Mybatis框架会根据此方法声明生成具体的实现类实现此方法 方法内部是jdbc代码
    //添加SQL注解
    @Insert("insert into hero values(null,#{name},#{money})")
    void insert(Hero hero);
    //删除SQL注解
    @Delete("delete from hero where name=#{name}")
    void deleteByName(String name);
    @Update("update hero set name=#{name},money=#{money} where id=#{id}")
    void update(Hero hero);
    @Select("select * from hero ")
    //因为查询到的是一条一tia信息 而且一个变量对应很多不同信息 可以直接用集合
    //框架会自动添加到集合
    List<Hero> select();
}
